From: Jeroen van der Heijden Date: Fri, 5 Oct 2018 10:48:45 +0000 (+0200) Subject: Added test X-Git-Tag: archive/raspbian/2.0.44-1+rpi1~1^2~3^2~8^2~36 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=b2b54fd23de2652142a9feec7896cfea5cf48fd9;p=siridb-server.git Added test --- diff --git a/Debug/src/siri/db/subdir.mk b/Debug/src/siri/db/subdir.mk index 44fba5aa..bcd9e1ad 100644 --- a/Debug/src/siri/db/subdir.mk +++ b/Debug/src/siri/db/subdir.mk @@ -8,7 +8,6 @@ C_SRCS += \ ../src/siri/db/aggregate.c \ ../src/siri/db/auth.c \ ../src/siri/db/buffer.c \ -../src/siri/db/chunk.c \ ../src/siri/db/db.c \ ../src/siri/db/ffile.c \ ../src/siri/db/fifo.c \ diff --git a/Release/src/siri/db/subdir.mk b/Release/src/siri/db/subdir.mk index bed7d326..0e94585e 100644 --- a/Release/src/siri/db/subdir.mk +++ b/Release/src/siri/db/subdir.mk @@ -8,7 +8,6 @@ C_SRCS += \ ../src/siri/db/aggregate.c \ ../src/siri/db/auth.c \ ../src/siri/db/buffer.c \ -../src/siri/db/chunk.c \ ../src/siri/db/db.c \ ../src/siri/db/ffile.c \ ../src/siri/db/fifo.c \ diff --git a/src/siri/db/series.c b/src/siri/db/series.c index 3989581d..232a3496 100644 --- a/src/siri/db/series.c +++ b/src/siri/db/series.c @@ -987,7 +987,7 @@ void siridb_series_ensure_type(siridb_series_t * series, qp_obj_t * qp_obj) { assert(0); } - qp_obj->tp = TP_DOUBLE; + qp_obj->tp = QP_DOUBLE; } return; case TP_STRING: @@ -995,7 +995,7 @@ void siridb_series_ensure_type(siridb_series_t * series, qp_obj_t * qp_obj) { if (qp_obj->tp == QP_INT64) { - snprintf( + qp_obj->len = snprintf( str_type_buf, STR_TYPE_BUF_SZ, "%" PRId64, @@ -1004,7 +1004,7 @@ void siridb_series_ensure_type(siridb_series_t * series, qp_obj_t * qp_obj) } else if (qp_obj->tp == QP_DOUBLE) { - snprintf( + qp_obj->len = snprintf( str_type_buf, STR_TYPE_BUF_SZ, "%f", diff --git a/test/test.sh b/test/test.sh index 159ebc1c..06ead634 100755 --- a/test/test.sh +++ b/test/test.sh @@ -9,6 +9,12 @@ else echo -e "\x1B[33mdisabled\x1B[0m"; fi +if [[ "$OSTYPE" == "darwin" ]]; then + LCRYPT= +else + LCRYPT=-lcrypt +fi + run () { if [ ! -f $1/sources ]; then return; @@ -19,7 +25,7 @@ run () { OUT=$1.out rm "$OUT" 2> /dev/null - gcc -I"../include" -O0 -g3 -Wall -Wextra -Winline -std=gnu99 $SOURCE $C_SRC -lm -lpcre2-8 -lcleri -o "$OUT" + gcc -I"../include" -O0 -g3 -Wall -Wextra -Winline -std=gnu99 $SOURCE $C_SRC -lm -lpcre2-8 -lcleri -luuid -luv $LCRYPT -o "$OUT" if [[ "$NOMEMTEST" -ne "1" ]]; then valgrind --tool=memcheck --error-exitcode=1 --leak-check=full -q ./$OUT else diff --git a/test/test_siridb/sources b/test/test_siridb/sources new file mode 100644 index 00000000..6a97c9ba --- /dev/null +++ b/test/test_siridb/sources @@ -0,0 +1,81 @@ +../src/slist/slist.c +../src/ctree/ctree.c +../src/xpath/xpath.c +../src/xmath/xmath.c +../src/qpack/qpack.c +../src/imap/imap.c +../src/llist/llist.c +../src/logger/logger.c +../src/strextra/strextra.c +../src/cfgparser/cfgparser.c +../src/owcrypt/owcrypt.c +../src/cexpr/cexpr.c +../src/expr/expr.c +../src/timeit/timeit.c +../src/iso8601/iso8601.c +../src/lock/lock.c +../src/procinfo/procinfo.c +../src/siri/async.c +../src/siri/backup.c +../src/siri/buffersync.c +../src/siri/err.c +../src/siri/heartbeat.c +../src/siri/optimize.c +../src/siri/siri.c +../src/siri/version.c +../src/siri/net/bserver.c +../src/siri/net/clserver.c +../src/siri/net/pkg.c +../src/siri/net/promise.c +../src/siri/net/promises.c +../src/siri/net/protocol.c +../src/siri/net/stream.c +../src/siri/net/tcp.c +../src/siri/net/pipe.c +../src/siri/db/access.c +../src/siri/db/aggregate.c +../src/siri/db/auth.c +../src/siri/db/buffer.c +../src/siri/db/db.c +../src/siri/db/ffile.c +../src/siri/db/fifo.c +../src/siri/db/forward.c +../src/siri/db/group.c +../src/siri/db/groups.c +../src/siri/db/initsync.c +../src/siri/db/insert.c +../src/siri/db/listener.c +../src/siri/db/lookup.c +../src/siri/db/median.c +../src/siri/db/misc.c +../src/siri/db/nodes.c +../src/siri/db/pcache.c +../src/siri/db/points.c +../src/siri/db/pool.c +../src/siri/db/pools.c +../src/siri/db/presuf.c +../src/siri/db/props.c +../src/siri/db/queries.c +../src/siri/db/query.c +../src/siri/db/re.c +../src/siri/db/reindex.c +../src/siri/db/replicate.c +../src/siri/db/series.c +../src/siri/db/server.c +../src/siri/db/servers.c +../src/siri/db/shard.c +../src/siri/db/shards.c +../src/siri/db/tasks.c +../src/siri/db/time.c +../src/siri/db/user.c +../src/siri/db/users.c +../src/siri/db/variance.c +../src/siri/db/walker.c +../src/siri/file/handler.c +../src/siri/file/pointer.c +../src/siri/admin/account.c +../src/siri/admin/client.c +../src/siri/admin/request.c +../src/siri/help/help.c +../src/siri/cfg/cfg.c +../src/siri/grammar/grammar.c \ No newline at end of file diff --git a/test/test_siridb/test_siridb.c b/test/test_siridb/test_siridb.c new file mode 100644 index 00000000..a0d1e517 --- /dev/null +++ b/test/test_siridb/test_siridb.c @@ -0,0 +1,117 @@ +#include "../test.h" +#include +#include + + +static int test_series_ensure_type(void) +{ + test_start("siridb (series_ensure_type)"); + + siridb_series_t series; + qp_obj_t qp_obj; + + /* test with integer series */ + { + series.tp = TP_INT; + + qp_obj.tp = QP_INT64; + qp_obj.via.int64 = -1; + siridb_series_ensure_type(&series, &qp_obj); + _assert (qp_obj.tp == QP_INT64); + _assert (qp_obj.via.int64 == -1); + + qp_obj.tp = QP_DOUBLE; + qp_obj.via.real = -1.0; + siridb_series_ensure_type(&series, &qp_obj); + _assert (qp_obj.tp == QP_INT64); + _assert (qp_obj.via.int64 == -1); + + qp_obj.tp = QP_RAW; + qp_obj.via.str = "55 percent"; + siridb_series_ensure_type(&series, &qp_obj); + _assert (qp_obj.tp == QP_INT64); + _assert (qp_obj.via.int64 == 55); + + qp_obj.tp = QP_RAW; + qp_obj.via.str = "garbage"; + siridb_series_ensure_type(&series, &qp_obj); + _assert (qp_obj.tp == QP_INT64); + _assert (qp_obj.via.int64 == 0); + } + + /* test with double series */ + { + series.tp = TP_DOUBLE; + + qp_obj.tp = QP_DOUBLE; + qp_obj.via.real = -1.1; + siridb_series_ensure_type(&series, &qp_obj); + _assert (qp_obj.tp == QP_DOUBLE); + _assert (qp_obj.via.real == -1.1); + + qp_obj.tp = QP_INT64; + qp_obj.via.int64 = -1; + siridb_series_ensure_type(&series, &qp_obj); + _assert (qp_obj.tp == QP_DOUBLE); + _assert (qp_obj.via.real == -1.0); + + qp_obj.tp = QP_RAW; + qp_obj.via.str = "0,5 percent"; + siridb_series_ensure_type(&series, &qp_obj); + _assert (qp_obj.tp == QP_DOUBLE); + _assert (qp_obj.via.real == 0.5); + + qp_obj.tp = QP_RAW; + qp_obj.via.str = "garbage"; + siridb_series_ensure_type(&series, &qp_obj); + _assert (qp_obj.tp == QP_DOUBLE); + _assert (qp_obj.via.real == 0.0); + } + + /* test with string series */ + { + series.tp = TP_STRING; + + qp_obj.tp = QP_RAW; + qp_obj.via.str = "55.3 percent"; + qp_obj.len = strlen(qp_obj.via.str); + siridb_series_ensure_type(&series, &qp_obj); + _assert (qp_obj.tp == QP_RAW); + _assert (strlen("55.3 percent") == qp_obj.len); + _assert (strncmp("55.3 percent", qp_obj.via.str, qp_obj.len) == 0); + + qp_obj.tp = QP_RAW; + qp_obj.via.str = ""; + qp_obj.len = strlen(qp_obj.via.str); + siridb_series_ensure_type(&series, &qp_obj); + _assert (qp_obj.tp == QP_RAW); + _assert (strlen("") == qp_obj.len); + _assert (strncmp("", qp_obj.via.str, qp_obj.len) == 0); + + qp_obj.tp = QP_DOUBLE; + qp_obj.via.real = -1.1; + siridb_series_ensure_type(&series, &qp_obj); + _assert (qp_obj.tp == QP_RAW); + _assert (strlen("-1,100000") == qp_obj.len); + _assert (strncmp("-1,100000", qp_obj.via.str, qp_obj.len) == 0); + + qp_obj.tp = QP_INT64; + qp_obj.via.int64 = -1; + siridb_series_ensure_type(&series, &qp_obj); + _assert (qp_obj.tp == QP_RAW); + _assert (strlen("-1") == qp_obj.len); + _assert (strncmp("-1", qp_obj.via.str, qp_obj.len) == 0); + } + + return test_end(); +}; + +int main() +{ + (void) setlocale(LC_ALL, ""); + + return ( + test_series_ensure_type() || + 0 + ); +}; \ No newline at end of file